iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 22
1
Modern Web

認識LIFF容易嗎?系列 第 22

[Day 22] LIFF OpenWindow

  • 分享至 

  • xImage
  •  

前言

打開LIFF APP頁面只能透過點擊聊天視窗內的LIFF URL嗎?
在LIFF APP中,能不能打開其他的LIFF APP頁面?

liff.openWindow()

用LINE內部瀏覽器或外部瀏覽器,打開其他LIFF APP的頁面。

實作

liff.openWindow這個方法的參數,是帶有urlexternal屬性的物件。

  • url: 是執行此方法後,將打開的LIFF APP頁面,為必填。
  • external: 是指打開此頁面是否為外部瀏覽器,是選填,預設值是false
    如果是false,是透過Line App內部瀏覽器開啟頁面;反之,true是透過外部瀏覽器開啟頁面。
if (liff.isApiAvailable('multipleLiffTransition')) {
    liff.openWindow({
        url: "https://line.me/{liffId}", // URL for another LIFF app
        external: false
    });
}

這個方法也可以搭配其他的LIFF API,譬如:

   if (liff.isApiAvailable('shareTargetPicker')) {
        liff.shareTargetPicker([{
          type: "text",
          text: message
        }])
        .then(
          //alert("ShareTargetPicker was launched")
        ).catch(function(res) {
          //alert("Failed to launch ShareTargetPicker")
        })
      } 
      else {
        alert("你的 LINE App 暫時不支援 Share Target Picker ,將開始外部瀏覽器。")
        liff.openWindow({
          url: "{{.LIFFRedirectURL}}",
          external: true
        });
      }
    });

當判斷用戶當前的Line版本,無法使用liff.shareTargetPicker()這支API的時候,可以透過 liff.openWindow()來開啟外部瀏覽器,讓用戶能利用別的方式來使用這個功能。

參考


上一篇
[Day 21]LIFF SendMessages
下一篇
[Day 23] LIFF ShareTargetPicker
系列文
認識LIFF容易嗎?30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言